Dynamic Component Substitutability Analysis
نویسندگان
چکیده
This paper presents an automated and compositional procedure to solve the substitutability problem in the context of evolving software systems. Our solution contributes two techniques for checking correctness of software upgrades: 1) a technique based on simultaneous use of over and under approximations obtained via existential and universal abstractions; 2) a dynamic assumeguarantee reasoning algorithm – previously generated component assumptions are reused and altered on-the-fly to prove or disprove the global safety properties on the updated system. When upgrades are found to be non-substitutable our solution generates constructive feedback to developers showing how to improve the components. The substitutability approach has been implemented and validated in the COMFORT model checking tool set and we report encouraging results on an industrial benchmark.
منابع مشابه
Synchronous Formalism and Behavioral Substitutability in Component Frameworks
When using a component framework, developers need to respect the behavior implemented by the components. Static information about the component interface is not sufficient. Dynamic information such as the description of valid sequences of operations is required. In this paper we propose a mathematical model obeying the Synchronous hypothesis and a formal language to describe the knowledge about...
متن کاملModularity assessment of product architecture: Implications for substitutability and interface management
No. 165 Modularity is a new product development strategy in which interfaces shared among components in a given product architecture become specified and standardized to allow for greater substitutability of components across product families. This paper introduces a mathematical model, termed modularization function, for analyzing the degree of modularity in a given product architecture by tak...
متن کاملTowards a Fully Abstract Semantics for Object-Oriented Program Components
Behavioral semantics for components abstract from implementation details and describe the components’ behavior independent of the components’ implementations. It provides an important foundation for behavioral substitutability and interface specifications. In this paper, we develop and investigate a behavioral semantics for a sequential class-based object-oriented language with aliasing, subcla...
متن کاملFull Dynamic Substitutability by SAT Encoding
Symmetry in constraint problems can be exploited to greatly improve search performance. A form of symmetry that has been the subject of considerable research is value interchangeability. Automatically detecting full interchangeability is thought to be intractable, so research has focused on either discovery of local interchangeability or programmer knowledge of full interchangeability. This pap...
متن کاملResearch on Protocol-Level Behavioral Substitutability of Software Components in Component-based Software System
The component-based software development (CBSD) has been paid more attention by software practicers in recent years. How to analyze and verify behavior-level component substitutability is very important when the component-based software system needs upgrading or maintaining. Concentrating on the component-based software system, this paper formally specifies the components and their interaction ...
متن کامل